New to this Edition
ALL PROGRAM CODE EXAMPLES ARE COLOR-CODED TO CORRESPOND WITH THE SCHEME OF PYTHON’S IDLE SYSTEM. This consistent color-coding helps students identify important features of Python, such as reserved words, strings, program comments, and the names of functions, classes, and methods.
UNIQUE EMPHASIS HIGHLIGHTS GRAPHICS AND GUI CONTENT WITH ACTUAL DEPTH OF COVERAGE. While most CS1 textbooks focus on terminal I/O-based applications with an optional chapter on graphics or sections on GUIs that offer little intellectual depth, this book changes that approach. After introducing students to all of the essentials of control structures, data types, and functions with terminal applications in Chapters 2-6, the book introduces object-based programming with Turtle graphics and image processing in Chapter 7and GUI programming in Chapter 9.
NEW APPROACH OFFERS MORE EMPHASIS ON GUIS. This second edition retains the author's signature early focus on terminal-based applications, but takes the later emphasis on GUIs a step further to better prepare students for success.
CHAPTER ON GRAPHICS AND IMAGE PROCESSING HIGHLIGHTS TURTLE GEOMETRY. Chapter 7 emphasizes several new examples of Turtle geometry while reviewing graphics and image processing. Full-color screen captures of the outputs build interest and excitement among students.
CHAPTER ON GRAPHICAL USER INTERFACES (GUI) NOW APPEARS EARLIER. This presentation, now in Chapter 8, closely follows the chapter on graphics and image processing. Content continues to emphasize applications that are similar to the ones students use every day. GUI programming provides opportunities for students to choose classes and manipulate objects in designing and building applications. In addition, students examine the important concepts of event-driven programming and the use of inheritance to customize existing classes.
UNIQUE CHAPTER 8 EASES TRANSITION TO ADVANCED IDEAS WITH AN OPEN SOURCE TOOLKIT, BREEZYPYTHONGUI. This open source toolkit insulates students from the complexity of Python’s tkinter GUI toolkit. The toolkit allows students to get a GUI application up and running quickly, while still coding it. You have the option to skip this chapter or use it to place exciting GUI programming at the center of your introductory course. The chapter is also unique in foregrounding inheritance in students’ initial experience with defining new classes.
CHAPTER ON DESIGN WITH CLASSES NOW APPEARS LATER IN THIS EDITION. Chapter 9 focuses on developing new classes of objects from scratch, with the intent of modeling objects in various problem domains. Example applications use terminal-based interfaces for rapid testing and development, while optional sections include the use of new data model classes in the GUI applications discussed in Chapter 8.